Keystroke dynamics, or typing dynamics, is the detailed timing information that describes exactly when each key was pressed and when it was released as a person is typing at a computer keyboard.
Contents |
The behavioral biometric of Keystroke Dynamics uses the manner and rhythm in which an individual types characters on a keyboard or keypad. The keystroke rhythms of a user are measured to develop a unique biometric template of the users typing pattern for future authentication. Raw measurements available from most every keyboard can be recorded to determine Dwell time (the time a key pressed) and Flight time (the time between “key up” and the next “key down”). The recorded keystroke timing data is then processed through a unique neural algorithm, which determines a primary pattern for future comparison. Similarly, vibration information may be used to create a pattern for future use in both identification and authentication tasks.
Data needed to analyze keystroke dynamics is obtained by keystroke logging. Normally, all that is retained when logging a typing session is the sequence of characters corresponding to the order in which keys were pressed and timing information is discarded. When reading email, the receiver cannot tell from reading the phrase "I saw 3 zebras!" whether:
On May 24, 1844, the message "What hath God wrought" was sent by telegraph from the U.S. Capitol in Washington, D.C. to the Baltimore and Ohio Railroad "outer depot" in Baltimore, Maryland, a new era in long-distance communications had begun. By the 1860’s the telegraph revolution was in full swing and telegraph operators were a valuable resource. With experience, each operator developed their unique “signature” and was able to be identified simply by their tapping rhythm.
As late as World War II the military transmitted messages through Morse Code. Using a methodology called "The Fist of the Sender," Military Intelligence identified that an individual had a unique way of keying in a message's "dots" and "dashes," creating a rhythm that could help distinguish ally from enemy.
Researchers are interested in using this keystroke dynamic information, which is normally discarded, to verify or even try to determine the identity of the person who is producing those keystrokes. This is often possible because some characteristics of keystroke production are as individual as handwriting or a signature. The techniques used to do this vary widely in power and sophistication, and range from statistical techniques to neural-nets to artificial intelligence.
In the simplest case, very simple rules can be used to rule out a possible user. For example, if we know that John types at 20 words per minute, and the person at the keyboard is going at 70 words per minute, it's a pretty safe bet that it's not John. That would be a test based simply on raw speed uncorrected for errors. It's only a one-way test, as it's always possible for people to go slower than normal, but it's unusual or impossible for them to go twice their normal speed.
Or, it may be that the mystery user at the keyboard and John both type at 50 words per minute; but John never really learned the numbers, and always has to slow down an extra half-second whenever a number has to be entered. If the mystery user doesn't slow down for numbers, then, again, it's a safe bet this isn't John.
The time to get to and depress a key (seek-time), and the time the key is held-down (hold-time) may be very characteristic for a person, regardless of how fast he is going overall. Most people have specific letters that take them longer to find or get to than their average seek-time over all letters, but which letters those are may vary dramatically but consistently for different people. Right-handed people may be statistically faster in getting to keys they hit with their right hand fingers than they are with their left hand fingers. Index fingers may be characteristically faster than other fingers to a degree that is consistent for a person day-to-day regardless of their overall speed that day.
In addition, sequences of letters may have characteristic properties for a person. In English, the word "the" is very common, and those three letters may be known as a rapid-fire sequence and not as just three meaningless letters hit in that order. Common endings, such as "ing", may be entered far faster than, say, the same letters in reverse order ("gni") to a degree that varies consistently by person. This consistency may hold and may reveal the person's native language's common sequences even when they are writing entirely in a different language, just as revealing as an accent might in spoken English.
Common "errors" may also be quite characteristic of a person, and there is an entire taxonomy of errors, such as this person's most common "substitutions", "reversals", "drop-outs", "double-strikes", "adjacent letter hits", "homonyms", hold-length-errors (for a shift key held down too short or too long a time). Even without knowing what language a person is working in, by looking at the rest of the text and what letters the person goes back and replaces, these errors might be detected. Again, the patterns of errors might be sufficiently different to distinguish two people.
Keystroke dynamics is part of a larger class of biometrics known as behavioral biometrics; their patterns are statistical in nature. It is a commonly held belief that behavioral biometrics are not as reliable as physical biometrics used for authentication such as fingerprints or retinal scans or DNA. The reality here is that behavioral biometrics use a confidence measurement instead of the traditional pass/fail measurements. As such, the traditional benchmarks of False Acceptance Rate (FAR) and False Rejection Rates (FRR) no longer have linear relationships.
The benefit to keystroke dynamics (as well as other behavioral biometrics) is that FRR/FAR can be adjusted by changing the acceptance threshold at the individual level. This allows for explicitly defined individual risk mitigation–something physical biometric technologies could never achieve.
Another benefit of keystroke dynamics: they can be captured continuously—not just at the start-up time—and may be adequately accurate to trigger an alarm to another system or person to come double-check the situation.
In some cases, a person at gun-point might be forced to get start-up access by entering a password or having a particular fingerprint, but then that person could be replaced by someone else at the keyboard who was taking over for some bad purpose. In other less dramatic cases, a doctor might violate business rules by sharing his password with his secretary, or by logging onto a medical system but then leaving the computer logged-in while someone else he knows about or doesn't know about uses the system. Keystroke dynamics is one way to detect such problems sufficiently reliably to be worth investigating, because even a 20% true-positive rate would send the word out that this type of behavior is being watched and caught.
Researchers are still a long way from being able to read a keylogger session from a public computer in a library or cafe somewhere and identify the person from the keystroke dynamics, but we may be in a position to confidently rule out certain people from being the author, who we are confident is "a left-handed person with small hands who doesn't write in English as their primary language."
One of the major problems that keystroke dynamics runs into is that a person's typing varies substantially during a day and between different days. People may get tired, or angry, or have a beer, or switch computers, or move their keyboard tray to a new location, or use a virtual keyboard, or be pasting in information from another source (cut-and-paste), or from a voice-to-text converter. Even while typing, a person, for example, may be on the phone or pausing to talk.
And some mornings, perhaps after a long night with little sleep and a lot of drinking, a person's typing may bear little resemblance to the way he types when he is well-rested. Extra doses of medication or missed doses could change his rhythm. There are hundreds of confounding circumstances.
Because of these variations, there will be error rates to almost any system, both false-positives and false-negatives. A valid solution that uses keystroke dynamics must take these elements into account.
Note: Some of the commercial products (the successful ones) have strategies to counter these issues and have proven effective in large-scale use (thousands of users) in real-world settings and applications.
There are several home software and commercial software products which claim to use keystroke dynamics to authenticate a user.
Intensity Analytics (http://www.intensityanalytics.com) - is based near Washington, DC, and has a patent-pending solution called CVMetrics which uses a variety of hyperaccurate methods for identifying and validating users on a continuous basis across applications. The CVMetrics application delivers a number of different statistical weights and measures for implementation in different environments from compliance and documentation, to authentication, to forensics, to field intelligence applications, and others.
AdmitOneSecurity - formerly BioPassword (http://www.admitonesecurity.com) is a patented commercial system which uses keystroke dynamics - in addition to other transparent authentication factors - to associate a user to their digital identity and detect online fraud — see the References section below for a link to a review from PC Magazine as well as a research report from Coalfire Systems on how the product enables PCI, FFIEC, and HIPAA compliance.
KeyTrac (http://www.keytrac.de) - unlike traditional methods, KeyTrac works with any text the user enters (not only passwords or always-the-same-text methods), thus making it the first method able to analyze any text input in the background, without disrupting the work flow of the end user. The concealed background keystroke recording, combined with the high level of security, offer a number of attractive options for implementing the system in e-commerce applications — something that would not be possible using traditional keyboard biometrics.
iMagic Software (http://www.imagicsoftware.com) makes Trustable Passwords, a patented commercial system which is designed for both web authentication and large-scale enterprise authentication in conjunction with eSSO and supports all platforms (Windows, Mac, Linux) and major enterprise infrastructure. Trustable Passwords is being used by websites to authenticate customers and in enterprises including multi-hospital health systems for user authentication and interfaces with other authentication technologies including Knowledge-Based, Device forensic, and out-of-band authentication.
ID Control (http://www.idcontrol.net) delivers keystroke dynamics with KeystrokeID which offers an impressively low FRR and FAR for verification and identification. KeystrokeID is easy to enroll and manage through their fully integrated and centralized identity and access management solution called ID Control Server.
Deepnet Security (http://www.deepnetsecurity.com) has also developed a keystroke biometric authentication system, TypeSense. It is claimed that their product employs advanced new algorithms such as auto-correlative training and adaptive learning, and achieve better result than other similar products.
Psylock (http://www.psylock.com) is a method for biometric authentication based on a user's typing behavior. Therefore the user is authenticated by the way he types on a conventional keyboard and depending on the result of the analysis he gets access to certain data. Psylock was a finalist in the Global Security Challenge award 2007 and third in the German IT-Security Award 2008. Concerning the error rates (FAR/FRR), Psylock claims to be the technological leader for keystroke dynamics.
Authenware Corp. (http://www.authenware.com) provides the highest security levels to enterprise applications, the web, and any form of transaction that engages a software artifact. Founded in 2006 and is headquartered in Miami, Florida (USA). Certified by International Biometric Group (http://www.biometricgroup.com) in 2009. AuthenWare Corp. is a global company with more than 14 technical & Commercial Offices around the world and a Research & Development Laboratory in Mendoza, Argentina.
bioChec™ (http://www.bioChec.com) has a patented implementation which uses keystroke dynamics for ubiquitous web-based login as well as workstation authentication. It is the recipient of the "BiometricTech Best of Show 2003" award as well as receiving "SC Magazine Global Awards 2005 Finalist".
DiBiSoft (http://www.dibisoft.com) has an implementation which uses keystroke dynamics for Windows authentication in hidden mode.
Probayes (http://www.probayes.com) has developed a unique keystroke dynamics solution for web applications. The solution leverages one of Probayes's patents on probabalistic computing.
Delfigo Security (http://www.delfigosecurity.com) provides multi-factor risk-based authentication to prevent identity theft and fraud. The solution from Delfigo Security uses keystroke biometrics and other behavioral characteristics in an AI based algorithm to create unique digital identity of an individual. Delfigo's solution easily integrates out-of-band capability to in-band authentication methods.
BehavioSec (http://www.behaviosec.com) provide behaviometric solutions encompassing keystroke, mouse, & environment dynamics for both windows continuous authentication and client-less web based to aid fraud prevention. BeahvioSec are headquartered in Sweden.
Anyone considering building a new product using keystroke dynamics should understand the legal issues (see below), and figure out as well how to have an authorized program's use of keystroke interception survive the removal efforts of multiple anti-spyware programs. In this case, the security enhancing programs may be fighting with each other.
On top of that, if the desired result for a web-based product is to use keystroke dynamics to decide whether to cause a pop-up window to appear, asking for re-entry of a password or other verification question, new pop-up blockers may prevent that feature from functioning.
Surreptitious use of key-logging software is on the rise, as of this writing. Use of such software may be in direct and explicit violation of local laws, such as the U.S. Patriot Act, under which such use may constitute wire-tapping. This could have severe penalties including jail time. See spyware for a better description of user-consent issues and various fraud statutes. Spyware and its use for illegal operations such as bank-fraud and identity theft are very much in the news, with even Microsoft issuing new spyware defense products, and tougher laws in the near future being very likely.
Competent legal advice should be obtained before attempting to use or even experiment with such software and keystroke dynamic analysis, if consent is not clearly obtained from the people at the keyboard, even though the actual residual "content" of the message—the resultant text—is never analyzed, read, or retained. The status of the "dynamic context" of the text is probably in legal limbo.
There are some patents in this area. Examples:
Because keystroke timings are generated by human beings, they are not well correlated with external processes, and are frequently used as a source of hardware-generated random numbers for computer systems.